메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

왜 HTML5가 중요한가 - Eric A. Meyer가 말하는 HTML5의 미래와 개발자가 갖춰야 할 기술들

한빛미디어

|

2010-04-29

|

by HANBIT

14,020

제공 : 한빛 네트워크
저자 : Mac Slocum
역자 : 문성원
원문 : Why HTML5 is worth your time

에릭 메이어 HTML5과 Flash를 둘러싼 논쟁은 언제나 큰 관심과 시선을 끌어모으지만, 정작 많은 사람들이 미처 깨닫지 못 한 더 큰 이슈가 있습니다. 과연 개발자와 디자이너는 HTML5에 대해 투자해야만 할까요?

HTML/CSS expert의 저자인 Eric A. Meyer는 단호하게 그렇다고 주장합니다. 다음 Q&A를 통해 Meyer는 왜 HTML5,CSS 그리고 JavaScript가 개발자와 디자이너들의 "대표적인 세가지" 인지를 설명합니다. 그리고 HTML5과 Flash를 둘러싼 많은 허풍들과 그 두가지에 관한 합리적이고 유용한 비교를 할 것입니다.

HTML5의 특징

Mac Slocum: HTML5은 우리가 알고 있는 HTML과 어떻게 다른가요?

Eric Meyer: HTML5는 단순히 이전에 쓰던 것보다 보다 많은 엘리먼트를 사용할 수 있는 HTML이기도 하지만 이건 80점짜리 답입니다. HTML5는 문서와 기사, 삽화와 삽화를 위한 설명문과 같은 요소를 위한 엘리먼트들이 추가되었습니다. 이것들을 통해

과 같은 태그를 이미지와 같이 써야했던 부분을 대신해줍니다. "figure"라는 엘리먼트가 존재하고 이미지를 넣은 뒤 "caption"을 부르기만 하면 되는 식이죠.

이것은 개발자들의 행동을 따라 가려는 시도입니다. 어떤 클래스명이 반복되어서 사용되는지, 어떤 구조가 반복되어서 사용되는지 말이죠. HTML은 그것을 정확하게 나타낼만큼 엘리먼트를 가지고 있지 않기 때문이죠.

게다가 HTML5의 스펙은 어떤 주어진 환경에서도 브라우져가 어떻게 동작해야하는지 정확하고 분명하게 기술하려고 노력했습니다. 과거 HTML 제안은 단순히 이렇게 기술합니다. "이것들은 엘리먼트입니다. 이것들은 속성입니다. 이건 기본적인 파싱 규칙이며 이건 에러를 만났을때 해야될 일들입니다." HTML5는 이런 상황을 서술하는 굉장히 긴 알고리즘을 갖추고 있습니다. "이걸 하고, 이걸 한뒤 또 이걸하고, 이렇게 해서 만약 문제가 생긴다면 이렇게 혹은 다르게 시도하십시오." 물론 이것이 타당한 아이디어인지에 대해서도 굉장히 많은 토론이 있었습니다. 하지만 이러한 알고리즘으로 포장된 비젼을 끄집어 낼 수 있다면(단언할 순 없습니다만, 만약 그렇다고 하죠.) 브라우져는 보다 많은 범용성을 갖추게 될 것입니다.

하지만 이건 근본적인 수준의 답변이군요. 보다 모호한 부분의 질문이 진행될수록 "HTML5는 어떻게 다른가?"라는 질문에 대한 답변도 보다 복잡해질겁니다.

MS: HTML5는 성숙한 개발 환경으로 자라날까요?

EM: 완벽한 프로그래밍 환경이 되리라곤 생각하지 않습니다. 하지만 기존의 HTML를 밀어내고 보다 나은 웹 애플리케이션을 만들어나가리라 봅니다. 이건 HTML의 주된 목적중 하나니까요. HTML5에는 웹 애플리케이션 환경을 위해서만 존재하는 부분들도 있습니다.

HTML을 보다 웹 애플리케이션 친화적으로 만들기 위한 가장 효과적인 방법은 microdata를 포함하는 것입니다. microdata는 문맥 정보와 원하는 페이지를 직접 포함하는 작은 데이터 요소들을 의미합니다. 하지만 이런 microdata는 점차 웹 애플리케이션이 나타내는 일종의 뷰(view)가 되어 갈 것입니다. 우리가 지금 사용하는 쿠키(Cookie)처럼 말이죠.

하지만 HTML은 for문와 switch문을 포함하진 않을 것입니다. 그건 Javascript에 남아있는 것이 맞겠죠. HTML은 프로그래밍 언어가 되진 않을 것입니다.

개발자와 디자이너들이 HTML5에 대해 알아둬야할 것

MS: HTML5의 이점을 최대한 누리려면 개발자들은 어떤 기술을 갖춰야 할까요?

EM: 우선 HTML5를 알고 있어야합니다. 또한 JavaScript와 CSS도 알고 있어야 하겠죠. "대표적인 세가지"입니다.

MS: 그렇다면 디자이너들은 어떨까요?

EM: 디자이너는 우선 마크업에 대해 알고 있어야합니다. 그리고 HTML5를 알 필요도 있습니다. 그들은 CSS를 작성할 수 있어야 할 뿐 아니라 웹 레이아웃을 이해할 필요가 있습니다. 그리고 그들은 최소한 Javascript가 어떤 것인지는 어렴풋이라도 알고 있어야합니다. 전 웹에 접근하는 모든 사람들이 Javascript를 알고 있어야한다고 생각하진 않습니다만, 최소한 디자이너라면 알고 있어야한다고 봅니다.

흔히 단순히 자신의 디자인을 웹에 올려놓는 것만으로 자기 자신을 웹디자이너로 착각하는 사람이 많습니다. 단순한 디자이너이긴 합니다. 하지만 웹디자이너는 아니죠. 그런 사람들은 시각 디자이너입니다. 웹디자이너와는 크게 다릅니다.

MS: 웹 개발 기술을 갖춘 다음에 Flash나 다른 기술을 습득하는 것이 좋을까요?

EM: 예. 우선 기반을 다진 다음 원하는 것을 추가하세요. 아무런 도구 없이 작업하는 건 매우 위험한 일입니다. 개발자라면 우선은 웹을 만들 수 있어야 하고, 작업 도구에 Flash를 추가하는 것도 나쁜 생각은 아닙니다.

HTML5 vs. Flash: 합리적인 비교

MS: "Flash 킬러"라는 점을 제외한다면, HTML5와 Flash를 비교한다면 어떨까요?

EM: HTML5 자체와 Flash는 굉장히 다른 기술입니다. 할 수 있는 것에 차이가 있죠. 하지만 HTML5는 CSS, Javascript를 더하면 그 이상을 할 수 있습니다. 전 이 조합이 모든 환경이 갖춰진 Flash와의 비교에 적합하다고 봅니다. 여러분은 원하는 요소를 화면에 넣을 수 있고 스크립팅할 수 있으며 사용자와의 상호작용을 정의할 수 있습니다. HTML5-CSS-Javascript로 말이죠.

수년 전에 HTML-CSS-Javascript 조합이 기술적으로 Flash환경에서 가능한 모든 것이 구현 가능한 경지에 도달했습니다. 하지만 이는 Flash가 2010년 들어서 저작 환경에 매진해서 이는 약간 어려워진 상태입니다. 저를 포함해서 몇몇 사람들은 지금의 웹 기술을 보며 1996년도의 Flash를 떠올립니다. 예를 들어 canvas 데모를 보죠. canvas 데모는 96년경의 Flash데모를 연상시킵니다. "여기는 원이 있고 마우스로 잡거나 휘두를 수 있습니다. 또 이건 박스 주변을 튀어나니기도 하고 물리법칙과 충돌, 애니메이션이 구현되어 있습니다. "

MS: 플러그인들에 대해선 어떻게 생각하시나요? 그것들은 정말 잘못된 것일까요?

EM: 오랫동안 생각해 본 결과, 잘못되어있다고 봅니다. 물론 Flash도 예외는 아닙니다. 모든 플러그인이 그래요. 동영상을 보기위해 플러그인이 필요하다는 건 결코 옳지 않습니다.

MS: 만약 어떤 애플리케이션에서 HTML5와 Flash가 같은 결과를 보여줄 수 있다고 했을때 개발자는 왜 HTML5를 사용해야 할까요?

EM: HTML5는 대중들에게 친숙합니다. 무언가를 하기 위해 웹에 접속해서 흔히 하는 일들과 같은 느낌이거든요. 웹 페이지에 표현하기 위한 요소로 Flash를 가급적 사용하지 마세요. 이건 철학적인 이유에서 입니다.

기술적으로 넓게 보면 기업이 누군가에게 종속되고 싶어하지 않는다는 점을 들 수 있습니다. Flash에서 모든 것이 가능하다라는 말은 Adobe에 사실상 종속된다는 걸 의미하죠. 웹 기술에 있어서 오직 W3C만이 타당한 의사결정권을 가지고 있다고 알려져있지만, 그런 W3C마저도 "어떤 악당"으로 돌변해서 "라이센스 금액을 내놔." 라고 말한다면 누구나 이렇게 대답하겠죠. "싫어요."

HTML5과 모바일 애플리케이션

MS: HTML5는 모바일 개발자들을 보다 자유롭게 할까요? Apple의 승인 프로세스 밖에서 개발하는 건 이득이 있을까요?

EM: 단언컨데 정답은 없습니다. 어떤 사람들은 앱스토어의 절차가 지나치게 까다롭다고 주장합니다. 맞습니다. 매우 인기좋고 까다로운 통제이며 아마 그 까다로움은 살아남겠죠. 하지만 까다로운건 까다로운겁니다.

모든 모바일 장치에 대해서 애플리케이션을 재작성한 것을 돌아본뒤 "우리가 무슨 끔찍한 짓거리를 하는거야" 라고 내뱉게 될거라는건 10년전부터 제기된 주장이었습니다. 제대로된 웹 개발 프로그램을 수료한 아이들이 왜 테이블 없이 레이아웃을 구성할 생각을 못했는지 이해 하지 못하는 것과 같은 맥락입니다. 저는 정말로 이해하지 못하는 사람들과 대화를 나눠봤습니다. 여러분이 "이런. 이건 CSS가 없잖아요." 라고 말해도 그들은 다음과 같이 말합니다. "하지만 그건 어렵고 무서워요. 그냥 이게 좋아요."

웹 기술에 관한 내기는 기술적인 면으론 반드시 집니다. 변화에는 꽤 오랜 시간이 필요할 겁니다.

TAG :
댓글 입력
자료실

최근 본 책0